package com.sanjiahantang.youjiarole.module.join.beans;

import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.sanjiahantang.youjiarole.base.BaseBean;

import org.json.JSONException;
import org.json.JSONObject;

import java.lang.reflect.Type;
import java.util.ArrayList;
import java.util.List;

/**
 * Created by zy on 2017/10/28.
 */

public class CertificationResponseBean extends BaseBean {

    private String data;

    public Data getData() {
        return new Gson().fromJson(data,Data.class);
    }

    public void setData(String data) {
        this.data = data;
    }

    public static class Data{
        private ExperienceRaListBean experienceRaList;
        private ProjectRaListBean projectRaList;
        private RoleInfoListBean roleInfoList;
        private SupervisionRaListBean supervisionRaList;


        public ExperienceRaListBean getExperienceRaList() {
            return experienceRaList;
        }

        public void setExperienceRaList(ExperienceRaListBean experienceRaList) {
            this.experienceRaList = experienceRaList;
        }

        public ProjectRaListBean getProjectRaList() {
            return projectRaList;
        }

        public void setProjectRaList(ProjectRaListBean projectRaList) {
            this.projectRaList = projectRaList;
        }

        public RoleInfoListBean getRoleInfoList() {
            return roleInfoList;
        }

        public void setRoleInfoList(RoleInfoListBean roleInfoList) {
            this.roleInfoList = roleInfoList;
        }

        public SupervisionRaListBean getSupervisionRaList() {
            return supervisionRaList;
        }

        public void setSupervisionRaList(SupervisionRaListBean supervisionRaList) {
            this.supervisionRaList = supervisionRaList;
        }
    }
    public static class ExperienceRaListBean {

        private String experiencePic;
        private String signTime;
        private int isExperience;
        private String roleId;
        private String experienceAddressDetail;
        private String linkPersonName;
        private int isExperienceStatus;
        private String experienceAddress;
        private double lon;
        private String updateTime;
        private String createTime;
        private String linkPersonPhone;
        private String experienceName;
        private int sysPoints;
        private double lat;
        private String fileId;

        public String getExperiencePic() {
            return experiencePic;
        }

        public void setExperiencePic(String experiencePic) {
            this.experiencePic = experiencePic;
        }

        public String getSignTime() {
            return signTime;
        }

        public void setSignTime(String signTime) {
            this.signTime = signTime;
        }

        public int getIsExperience() {
            return isExperience;
        }

        public void setIsExperience(int isExperience) {
            this.isExperience = isExperience;
        }

        public String getRoleId() {
            return roleId;
        }

        public void setRoleId(String roleId) {
            this.roleId = roleId;
        }

        public String getExperienceAddressDetail() {
            return experienceAddressDetail;
        }

        public void setExperienceAddressDetail(String experienceAddressDetail) {
            this.experienceAddressDetail = experienceAddressDetail;
        }

        public String getLinkPersonName() {
            return linkPersonName;
        }

        public void setLinkPersonName(String linkPersonName) {
            this.linkPersonName = linkPersonName;
        }

        public int getIsExperienceStatus() {
            return isExperienceStatus;
        }

        public void setIsExperienceStatus(int isExperienceStatus) {
            this.isExperienceStatus = isExperienceStatus;
        }

        public String getExperienceAddress() {
            return experienceAddress;
        }

        public void setExperienceAddress(String experienceAddress) {
            this.experienceAddress = experienceAddress;
        }

        public double getLon() {
            return lon;
        }

        public void setLon(double lon) {
            this.lon = lon;
        }

        public String getUpdateTime() {
            return updateTime;
        }

        public void setUpdateTime(String updateTime) {
            this.updateTime = updateTime;
        }

        public String getCreateTime() {
            return createTime;
        }

        public void setCreateTime(String createTime) {
            this.createTime = createTime;
        }

        public String getLinkPersonPhone() {
            return linkPersonPhone;
        }

        public void setLinkPersonPhone(String linkPersonPhone) {
            this.linkPersonPhone = linkPersonPhone;
        }

        public String getExperienceName() {
            return experienceName;
        }

        public void setExperienceName(String experienceName) {
            this.experienceName = experienceName;
        }

        public int getSysPoints() {
            return sysPoints;
        }

        public void setSysPoints(int sysPoints) {
            this.sysPoints = sysPoints;
        }

        public double getLat() {
            return lat;
        }

        public void setLat(double lat) {
            this.lat = lat;
        }

        public String getFileId() {
            return fileId;
        }

        public void setFileId(String fileId) {
            this.fileId = fileId;
        }
    }

    public static class ProjectRaListBean {
        private String workQualificationPic;
        private String fileId;

        public String getFileId() {
            return fileId;
        }

        public void setFileId(String fileId) {
            this.fileId = fileId;
        }

        public String getWorkQualificationPic() {
            return workQualificationPic;
        }

        public void setWorkQualificationPic(String workQualificationPic) {
            this.workQualificationPic = workQualificationPic;
        }
    }

    public static class RoleInfoListBean {
        private String passWord;
        private String address;
        private String idCode;
        private String roleId;
        private int stateId;
        private String linkPersonName;
        private String updateTime;
        private String userName;
        private String phone;
        private String createTime;
        private String linkPersonPhone;
        private String roleName;
        private int id;
        private String idCardPic;
        private String fileId;
        private String realName;

        public String getRealName() {
            return realName;
        }

        public void setRealName(String realName) {
            this.realName = realName;
        }

        public String getFileId() {
            return fileId;
        }

        public void setFileId(String fileId) {
            this.fileId = fileId;
        }

        public String getPassWord() {
            return passWord;
        }

        public void setPassWord(String passWord) {
            this.passWord = passWord;
        }

        public String getAddress() {
            return address;
        }

        public void setAddress(String address) {
            this.address = address;
        }

        public String getIdCode() {
            return idCode;
        }

        public void setIdCode(String idCode) {
            this.idCode = idCode;
        }

        public String getRoleId() {
            return roleId;
        }

        public void setRoleId(String roleId) {
            this.roleId = roleId;
        }

        public int getStateId() {
            return stateId;
        }

        public void setStateId(int stateId) {
            this.stateId = stateId;
        }

        public String getLinkPersonName() {
            return linkPersonName;
        }

        public void setLinkPersonName(String linkPersonName) {
            this.linkPersonName = linkPersonName;
        }

        public String getUpdateTime() {
            return updateTime;
        }

        public void setUpdateTime(String updateTime) {
            this.updateTime = updateTime;
        }

        public String getUserName() {
            return userName;
        }

        public void setUserName(String userName) {
            this.userName = userName;
        }

        public String getPhone() {
            return phone;
        }

        public void setPhone(String phone) {
            this.phone = phone;
        }

        public String getCreateTime() {
            return createTime;
        }

        public void setCreateTime(String createTime) {
            this.createTime = createTime;
        }

        public String getLinkPersonPhone() {
            return linkPersonPhone;
        }

        public void setLinkPersonPhone(String linkPersonPhone) {
            this.linkPersonPhone = linkPersonPhone;
        }

        public String getRoleName() {
            return roleName;
        }

        public void setRoleName(String roleName) {
            this.roleName = roleName;
        }

        public int getId() {
            return id;
        }

        public void setId(int id) {
            this.id = id;
        }

        public String getIdCardPic() {
            return idCardPic;
        }

        public void setIdCardPic(String idCardPic) {
            this.idCardPic = idCardPic;
        }
    }

    public static class SupervisionRaListBean {
        private String supervisorQualificationPic;
        private String fileId;

        public String getFileId() {
            return fileId;
        }

        public void setFileId(String fileId) {
            this.fileId = fileId;
        }

        public static SupervisionRaListBean objectFromData(String str) {

            return new Gson().fromJson(str, SupervisionRaListBean.class);
        }

        public static SupervisionRaListBean objectFromData(String str, String key) {

            try {
                JSONObject jsonObject = new JSONObject(str);

                return new Gson().fromJson(jsonObject.getString(str), SupervisionRaListBean.class);
            } catch (JSONException e) {
                e.printStackTrace();
            }

            return null;
        }

        public static List<SupervisionRaListBean> arraySupervisionRaListBeanFromData(String str) {

            Type listType = new TypeToken<ArrayList<SupervisionRaListBean>>() {
            }.getType();

            return new Gson().fromJson(str, listType);
        }

        public static List<SupervisionRaListBean> arraySupervisionRaListBeanFromData(String str, String key) {

            try {
                JSONObject jsonObject = new JSONObject(str);
                Type listType = new TypeToken<ArrayList<SupervisionRaListBean>>() {
                }.getType();

                return new Gson().fromJson(jsonObject.getString(str), listType);

            } catch (JSONException e) {
                e.printStackTrace();
            }

            return new ArrayList();


        }

        public String getSupervisorQualificationPic() {
            return supervisorQualificationPic;
        }

        public void setSupervisorQualificationPic(String supervisorQualificationPic) {
            this.supervisorQualificationPic = supervisorQualificationPic;
        }
    }
}
